672
291
218754
21712
In an age where virtual assistant programs have become ubiquitous, you may also wish to have one that helps you find solutions to common ggplot formatting problems.
— R Function A Day (@rfunctionaday) April 15, 2021
The {gghelp} function {ggx} mimics behavior of such an assistant 📝https://t.co/6VQzRqbrgp#rstats #DataScience pic.twitter.com/esK1W6xMEj
In an age where virtual assistant programs have become ubiquitous, you may also wish to have one that helps you find solutions to common ggplot formatting problems.
— R Function A Day (@rfunctionaday) April 15, 2021
The {gghelp} function {ggx} mimics behavior of such an assistant 📝https://t.co/6VQzRqbrgp#rstats #DataScience pic.twitter.com/esK1W6xMEj
Pykg2vec: A #Python Library for Knowledge Graph Embedding. #BigData #Analytics #DataScience #AI #MachineLearning #IoT #IIoT #RStats #TensorFlow #Java #JavaScript #ReactJS #CloudComputing #Serverless #DataScientist #Linux #Programming #Coding #100DaysofCodehttps://t.co/Mpp9MHxadI
— Syeda Sheraj Ali (@Sheraj99) April 15, 2021
---
title: "#rstats flexdashboard"
output:
flexdashboard::flex_dashboard:
orientation: rows
vertical_layout: scroll
source_code: embed
theme: sandstone
---
```{r setup, include=FALSE}
library(flexdashboard)
library(rtweet)
library(dplyr)
library(httr)
library(lubridate)
library(echarts4r)
get_unique_value <- function(data, col) {
col <- enquo(col)
data %>%
pull(!!col) %>%
unique() %>%
length()
}
rstats_tweets <- read_twitter_csv("data/rstats_tweets.csv")
count_timeseries <- rstats_tweets %>%
ts_data(by = "hours")
tweets_today <- rstats_tweets %>%
filter(created_at == today()-1)
by_hour <- rstats_tweets %>%
group_by(hour = hour(created_at)) %>%
summarise(count = n()) %>%
ungroup()
number_of_unique_tweets <- get_unique_value(rstats_tweets, text)
number_of_unique_tweets_today <- get_unique_value(tweets_today, text)
number_of_tweeters_today <- get_unique_value(tweets_today, user_id)
number_of_likes <- rstats_tweets %>%
pull(favorite_count) %>%
sum()
get_tweet_embed <- function(user, status_id) {
url <- stringr::str_glue("https://publish.twitter.com/oembed?url=https://twitter.com/{user}/status/{status_id}&partner=&hide_thread=false")
response <- GET(url) %>%
content()
return(response$html)
}
```
Row
-----------------------------------------------------------------------
### Tweets Today
```{r}
valueBox(number_of_unique_tweets_today, icon = "fa-comment-alt", color = "plum")
```
### Tweeters Today
```{r}
valueBox(number_of_tweeters_today, icon = "fa-user", color = "peachpuff")
```
### #rstats Likes
```{r}
valueBox(number_of_likes, icon = "fa-heart", color = "palevioletred")
```
### #rstats Tweets
```{r}
valueBox(number_of_unique_tweets, icon = "fa-comments", color = "mediumorchid")
```
Row {.tabset .tabset-fade data-width=400}
-----------------------------------------------------------------------
### Tweet volume
```{r}
count_timeseries %>%
e_charts(time) %>%
e_line(n, name = "# of tweets", smooth = TRUE) %>%
e_x_axis(
type = "time",
formatter = htmlwidgets::JS(
"function(value){
let date = new Date(value);
label = `${date.getDate()}-${(parseInt(date.getMonth()) + 1)}-${date.getFullYear()}`;
return label;
}"
)
) %>%
e_axis_labels(y = "Tweets") %>%
e_theme("westeros") %>%
e_tooltip(trigger = "axis", formatter = htmlwidgets::JS("
function(params) {
let date = new Date(params[0].value[0])
let options = { year: 'numeric', month: 'short', day: 'numeric', hour: 'numeric'}
let title = `${date.toLocaleDateString('en-US', options=options)}`
let num = `${params[0].value[1]} tweets`
return(`${title}${num}`);
}"))
```
### Tweets by Hour of Day
```{r}
by_hour %>%
e_charts(hour) %>%
e_step(count, name = "Tweets", step = "middle") %>%
e_x_axis(
min = 0,
max = 23,
) %>%
e_axis_labels(x = "Time of Day (UTC)", y = "Tweets") %>%
e_theme("westeros") %>%
e_tooltip(trigger = "axis", formatter = htmlwidgets::JS("
function(params) {
let title = `${params[0].value[0]}h`
let num = `${params[0].value[1]} tweets`
return(`${title}${num}`);
}"))
```
Row
-----------------------------------------------------------------------
### 💗 Most Liked Tweet Today
```{r}
most_liked_url <- tweets_today %>%
slice_max(favorite_count)
shiny::HTML(get_tweet_embed(most_liked_url$screen_name, most_liked_url$status_id))
```
### ✨ Most Retweeted Tweet Today
```{r}
most_retweeted <- tweets_today %>%
slice_max(retweet_count)
shiny::HTML(get_tweet_embed(most_retweeted$screen_name, most_retweeted$status_id))
```
### 🎉 Most Recent
```{r}
most_recent <- tweets_today %>%
slice_max(created_at)
shiny::HTML(get_tweet_embed(most_recent$screen_name[1], most_recent$status_id[1]))
```